2025-04-20

🍿 Final Project: Streaming Platforms Showdown

📊 Data Science I — Spring 2025

The Ology Trio

Introduction

If you’re anything like us, you’ve probably spent hours scrolling through Netflix, Prime Video, Disney+, and Hulu, trying to decide what to watch. With so many options available, it’s easy to feel overwhelmed, especially when it comes to choosing between the platforms. That’s where this analysis comes in—we’re diving into the Rotten Tomatoes scores across these platforms to see which one consistently delivers the highest-rated content. By comparing these ratings, we want to make it easier for you to figure out which platform offers the best movies and shows based on critical reviews, so you can make more confident choices next time you’re deciding what to watch.

Questions

  1. How many titles are available on each platform?
  2. Which platform has the highest-rated content overall (based on Rotten Tomatoes scores)?
  3. How has the number of titles released over time changed for each platform?
  4. Which platform has the most highly rated content (RT score > 90%)?
  5. How do age ratings vary across platforms?
  6. Which platforms focus more on older vs. newer titles?
  7. How do average Rotten Tomatoes scores differ by age rating?
  8. How have average scores changed over time per platform?
  9. Which age ratings are underrepresented on each platform?

Packages Used

# Loading the full tidyverse
library(tidyverse)

#Using this for data manipulation
library(dplyr)

#Cleaning column names
#(e.g., turning "Rotten Tomatoes" into rotten_tomatoes)
library(janitor)

#Show text is to improve font in graphs 
library(showtext)  

Unfiltered Data

streaming_data <- read_csv("MoviesOnStreamingPlatforms 2.csv") 
glimpse(read.csv("MoviesOnStreamingPlatforms 2.csv"))
## Rows: 9,515
## Columns: 11
## $ X               <int> 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, …
## $ ID              <int> 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,…
## $ Title           <chr> "The Irishman", "Dangal", "David Attenborough: A Life …
## $ Year            <int> 2019, 2016, 2020, 2001, 2018, 2018, 2020, 2017, 2018, …
## $ Age             <chr> "18+", "7+", "7+", "7+", "18+", "13+", "13+", "13+", "…
## $ Rotten.Tomatoes <chr> "98/100", "97/100", "95/100", "94/100", "94/100", "94/…
## $ Netflix         <int> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, …
## $ Hulu            <int> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, …
## $ Prime.Video     <int> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, …
## $ Disney.         <int> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, …
## $ Type            <int> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, …
streaming_data <- streaming_data %>% clean_names()

Key Terms

  • ID: A unique identifier for each movie within the data set.Title: The full title of the movie as it appears on the streaming platforms.

  • Age: The recommended age group for the movie’s audience, such as ‘7+’, ‘13+’, ‘16+’, or ‘18+’.

  • Rotten Tomatoes: The movie’s score on Rotten Tomatoes, which reflects critics’ reviews and can be used as a measure of the movie’s reception.

  • Netflix, Hulu, Prime Video, Disney + : A binary indicator (0 or 1) of whether the movie is available on the streaming service, with 1 indicating availability.

  • Type: A categorical indicator distinguishing the content as either a ‘Movie’ or a ‘TV Show’.

  • Year: The release year of the movie, indicating when the movie was first made available to the public.

Key Values and Calculations:

  • The dataset spans over a century of movie releases, from as early as 1914 to 2021.

  • With 9515 unique values for movie titles, the dataset covers a wide range of cinematic works, from classics to recent releases.

Q1. How many titles are available on each platform?

Q2. Which platform has the highest-rated content overall (based on Rotten Tomatoes scores)?

## # A tibble: 4 × 2
##   Platform    avg_score
##   <chr>           <dbl>
## 1 disney           58.3
## 2 hulu             60.4
## 3 netflix          54.4
## 4 prime_video      50.4

Q3. How has the number of titles released over time changed for each platform?

Q4. Which platform has the most highly rated content (RT score > 90%)?

Q5. How do age ratings vary across platforms?

Q6. Which platforms focus more on older vs. newer titles?

Q7. How do average Rotten Tomatoes scores differ by age rating?

<<<<<<< HEAD ## Q8. How have average Rotten Tomatoes scores changed over time per platform?

======= ## Q8. How have average scores changed over time per platform? >>>>>>> 824119c1ac87b420def4e6a4db893ad3662a8636

Q9. Which age ratings are underrepresented on each platform?

Summary

If you want something that’s highly rated, family friendly Disney is the way to go which has a library of films from Pixar, Marvel and National Geographic. For a bigger selection Netflix and Prime offer the widest selection of titles and if you’re into more of a mature content, Hulu and Netflix are the best way to go. No matter what you’re in the mood for, this guide will help you pick the best platform for your next watch.